package com.sh.rbac.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sh.rbac.domain.dto.dict.DictQueryDTO;
import com.sh.rbac.domain.dto.dict.DictSaveDTO;
import com.sh.rbac.domain.dto.dict.DictUpdateDTO;
import com.sh.rbac.domain.entity.Dict;

/**
 * @author lucky
 * @description 针对表【sys_dict(字典表)】的数据库操作Service
 * @createDate 2024-06-26 20:57:02
 */
public interface DictService extends IService<Dict> {

    /**
     * 分页查询字典列表
     *
     * @param current      当前页
     * @param limit        每页显示条数
     * @param dictQueryDTO 查询条件
     * @return 分页查询结果
     */
    Page<Dict> getPage(Long current, Long limit, DictQueryDTO dictQueryDTO);

    /**
     * 保存字典
     *
     * @param dictSaveDTO 字典保存对象
     * @return 是否保存成功
     */
    Boolean save(DictSaveDTO dictSaveDTO);


    /**
     * 更新字典
     *
     * @param dictUpdateDTO 字典更新对象
     * @return 是否更新成功
     */
    Boolean updateById(DictUpdateDTO dictUpdateDTO);


    /**
     * 更新字典状态
     *
     * @param id     字典ID
     * @param status 字典状态
     * @return 是否更新成功
     */
    Boolean updateStatus(Long id, Integer status);
}
